package com.ruoyi.locksApi.service.impl;

import com.alibaba.fastjson.JSONObject;
import com.ruoyi.locksApi.domain.ATask;
import com.ruoyi.locksApi.mapper.ATaskMapper;
import com.ruoyi.locksApi.service.IATaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 任务Service业务层处理
 * 
 * @author ruoyi
 * @date 2024-07-31
 */
@Service
public class ATaskServiceImpl implements IATaskService 
{
    @Autowired
    private ATaskMapper aTaskMapper;

    /**
     * 查询任务
     * 
     * @param id 任务主键
     * @return 任务
     */
    @Override
    public ATask selectATaskById(Long id)
    {
        return aTaskMapper.selectATaskById(id);
    }

    /**
     * 查询任务列表
     * 
     * @param aTask 任务
     * @return 任务
     */
    @Override
    public List<ATask> selectATaskList(ATask aTask)
    {
        return aTaskMapper.selectATaskList(aTask);
    }
    @Override
    public JSONObject selectATaskList1(ATask aTask)
    {
        ATask aTask1 = aTaskMapper.selectATaskList1(aTask);
        Integer i = aTaskMapper.selectATaskCount(aTask);
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("errorCode",0);
        jsonObject.put("message","");
        JSONObject json = JSONObject.parseObject(aTask1.getData());
        json.put("taskid",(aTask1.getId().intValue()));
        json.put("remain", Math.max(i - 1, 0));
        jsonObject.put("data",json);


        System.err.println(jsonObject);

        return jsonObject;
    }

    /**
     * 新增任务
     * 
     * @param aTask 任务
     * @return 结果
     */
    @Override
    public int insertATask(ATask aTask)
    {
        return aTaskMapper.insertATask(aTask);
    }

    /**
     * 修改任务
     * 
     * @param aTask 任务
     * @return 结果
     */
    @Override
    public int updateATask(ATask aTask)
    {
        return aTaskMapper.updateATask(aTask);
    }

    /**
     * 批量删除任务
     * 
     * @param ids 需要删除的任务主键
     * @return 结果
     */
    @Override
    public int deleteATaskByIds(Long[] ids)
    {
        return aTaskMapper.deleteATaskByIds(ids);
    }

    /**
     * 删除任务信息
     * 
     * @param id 任务主键
     * @return 结果
     */
    @Override
    public int deleteATaskById(Long id)
    {
        return aTaskMapper.deleteATaskById(id);
    }
}
